/*Este panel debe mostrar el marcador una vez empezada la partida
*/
package reversi.gui;

import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.BoxLayout;
import javax.swing.JTextField;
import java.util.ArrayList;

public class PanelDeInformacionSur extends JPanel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 3629253902762631223L;
	private static JTextField cantNegras;
	private static JTextField cantVerdes;
	static Integer cantidadNegras =2;
	static Integer cantidadVerdes = 2;
	private static JTextField txtColor;
	private static JTextField txtTurno;
	
	public PanelDeInformacionSur() {
		
		JPanel datosJuego = new JPanel();
		add(datosJuego);
		datosJuego.setLayout(new BoxLayout(datosJuego, BoxLayout.Y_AXIS));
		
		JLabel lblColor = new JLabel("Mi color");
		datosJuego.add(lblColor);
		
		txtColor = new JTextField();
		txtColor.setEditable(false);
		datosJuego.add(txtColor);
		txtColor.setColumns(10);
		
		JLabel lblTurno = new JLabel("Turno");
		datosJuego.add(lblTurno);
		
		txtTurno = new JTextField();
		txtTurno.setEditable(false);
		datosJuego.add(txtTurno);
		txtTurno.setColumns(10);
		
		JLabel lblFichasNegras = new JLabel("Fichas Negras");
		datosJuego.add(lblFichasNegras);
		
		cantNegras = new JTextField();
		cantNegras.setEditable(false);
		cantNegras.setText(cantidadNegras.toString());
		datosJuego.add(cantNegras);
		cantNegras.setColumns(10);
		
		
		JLabel lblFichasVerdes = new JLabel("Fichas Verdes");
		datosJuego.add(lblFichasVerdes);
		
		cantVerdes = new JTextField();
		cantVerdes.setEditable(false);
		cantVerdes.setText(cantidadVerdes.toString());
		datosJuego.add(cantVerdes);
		cantVerdes.setColumns(10);
	}
	
	public static void sumarFichas(ArrayList<ArrayList<BotonReversi>> matrizDeBotones){
		Integer sumaNegras = 0;
		Integer sumaVerdes = 0;
		for (int i = 0; i < matrizDeBotones.size(); i++)
		{
			for (int j = 0; j < matrizDeBotones.get(i).size(); j++)
			{
				if( matrizDeBotones.get(i).get(j).esNegro())
					sumaNegras++;				
				if(matrizDeBotones.get(i).get(j).esVerde())
					sumaVerdes++;
			}
		}
		cantidadNegras = sumaNegras;
		cantidadVerdes = sumaVerdes;
		cantNegras.setText(cantidadNegras.toString());
		cantVerdes.setText(cantidadVerdes.toString());
	}
	public static void ponerColor(String miColor){
		txtColor.setText(miColor);
	}
	public static String obtenerMiColor(){
		return txtColor.getText();
	}
	public static void cambiarTurno(Boolean miTurno){
		if(miTurno){
			txtTurno.setText("Mi turno");
		}else{
			txtTurno.setText("Turno Rival");
		}
	}
	public static int resultadoPartida(){
		String miColor = obtenerMiColor();
		if(cantidadNegras == cantidadVerdes){
			return 0;
		}
		if(miColor.equalsIgnoreCase("negras")){
			if(cantidadNegras > cantidadVerdes){
				return 1;
			}else{
				return 2;
			}	
		}else{
			if(cantidadNegras < cantidadVerdes){
				return 1;
			}else{
				return 2;
			}
		}
	}
	public static void resetearPanel(){
		txtTurno.setText("");
		txtColor.setText("");
	}

}
